home *** CD-ROM | disk | FTP | other *** search
/ hornet.scene.org / hornet.scene.org FTP 11-25-2012.zip / hornet.scene.org FTP 11-25-2012 / code / library / i3ddemo2.exe / I3D_Q&A.TXT < prev    next >
Text File  |  1994-04-28  |  3KB  |  60 lines

  1. Here are some common questions and answers about the I3D tool kit:
  2. ------------------------------------------------------------------
  3.  
  4. Q: Can I use I3D with Pascal? (or COBAL, or Prolog, or Visual Basic...)
  5.  
  6. A: I3D is designed to be used with C or C++. If you'd like to use
  7.    I3D with another language, we suggest that you learn C instead, it
  8.    is the industry standard for graphics after all. 
  9.  
  10.    If you MUST use another language that can use DLL's, you can buy the 
  11.    full C source and compile it as a DLL.
  12.  
  13.  
  14. Q: Why doesn't I3D run as fast as Game_X?
  15.  
  16. A: I3D is a flexible 3D raycasting engine that gives similar performance
  17.    to early 3D games. It allows many features that other engines do not.
  18.    This flexibility comes at a small cost in raw speed.
  19.  
  20.    Be sure that you are comparing I3D's performance with the same size window, 
  21.    same features, etc. You will find that I3D's performance on 486/33
  22.    or better machines to be comparable to most other raycasting engines
  23.    when run with a similar setup.
  24.    
  25.  
  26. Q: Why does I3D run slowly under Windows?
  27.  
  28. A: Once again, compare the SAME SIZE window and you will see that I3D only
  29.    runs about 15% slower under windows than DOS. (The Windows demo shows
  30.    a 320x200 window.) This performance loss is due to the slowness of 
  31.    Window's bliting. Some high performance VGA cards may improve this. 
  32.  
  33.    You can also substitute the new VFW 1.1 DrawDIB routines for StretchDIBits,
  34.    for about a 10% improvement in speed. You'll need the VFW 1.1 developer
  35.    kit to do this.
  36.  
  37.  
  38. Q: Why doesn't I3D have a .DLL?
  39.  
  40. A: The I3D engine is designed to work closely with the main C program. For
  41.    instance, many data structures are passed via pointers. This would not
  42.    be very easy to make work with a generic DLL. It is possible to wrap
  43.    the I3D .LIB into a .DLL, we just didn't think it was worth the trouble.
  44.  
  45.  
  46. Q: Why isn't I3D completly written in hand-tuned assembly code?
  47.  
  48. A: Basically hand tuned assembly code is great for the inner-loops. A bit of
  49.    I3D (16-bit version) is in-line assemby code. Most of I3D is straight
  50.    C, which has helped to save the author's sanity.
  51.  
  52.  
  53. Q: What is raycasting?
  54.  
  55. A: Raycasting a is simplified way of doing a limited 3D enviroment. It lends
  56.    itself to texture-mapped interior worlds quite well. It does not involve
  57.    3D polygons, Z-buffers, or Phong-shading. Within these limitations, 
  58.    raycasting can be quite fast - much faster than most texture-mapped
  59.    polygon engines.
  60.